package com.anolesoft.amljmes.foreknow.service;

import com.anolesoft.amljmes.foreknow.bo.MesBzzPtdmx;
import com.anolesoft.amljmes.foreknow.bo.MesBzzQfbld;
import com.anolesoft.amljmes.foreknow.bo.MesBzzQfbldmx;
import com.anolesoft.amljmes.foreknow.dto.MesBzzQfbldDto;

import java.util.List;

public interface MesBzzQfbldService {
    /**
     * 插入铅封保留单
     * @param mx
     * @return
     */
    int insertData(List<MesBzzPtdmx> mx);

    /**
     * 插入铅封保留单明细
     * @param mx
     * @return
     */
    int insertMx(List<MesBzzPtdmx> mx);

    /**
     * 修改状态为1
     * @return
     */
    int updateState(MesBzzPtdmx mesBzzPtdmx);

    /**
     * 修改状态为2
     * @return
     */
    int updateStates(MesBzzPtdmx mesBzzPtdmx);

    /**
     * 查询保留单匹配条数
     * @param objuid
     * @return
     */
    int selectAll(String objuid);

    /**
     * 查询明细匹配条数
     * @param objuid
     * @return
     */
    int selectMx(String objuid);

    /**
     * 修改用户输入内容
     * @param qfbldmx
     * @return
     */
    int updateThree(MesBzzQfbldmx qfbldmx);

    /**
     * 查询铅封保留单
     * @param qfbldDto
     * @return
     */
    List<MesBzzQfbld> query(MesBzzQfbldDto qfbldDto);

    /**
     * 查询铅封保留单明细
     * @param objuid
     * @return
     */
    List<MesBzzQfbldmx> queryMx(String objuid);

    /**
     * 修改铅封保留单明细状态
     */
    int updatemxState(String objuid);
    /**
     * 修改配套单明细保留数量
     */
    int updateNum(String ptdmxUid);
    /**
     * 查询该保留单下是否还存在明细(在铅封保留单明细中用保留单主键查询)
     */
    int selectNum(String qfbldUid);
    /**
     * 修改铅封保留单状态(如果没有明细作废)
     */
    int updatebldstate(String qfbldUid);
    /**
     * 修改配套单明细保留数量
     */
    int updateptdstate(String ptdmxUid);
    /**
     * 查询铅封保留单主键
     */
    String selectObjuid(String matchingDocPk);
    /**
     * 查询多条明细
     */
    List<MesBzzQfbldmx> querydmingxi(String ids);
    /**
     * 改变铅封保留单明细保留单数量
     */
    int updateqfbldnum(String objuid);
}
